from cryptography.fernet import Fernet

class EncryptionUtil:
    #源    key=blocklyblocklyblocklyblockly1314--->进行base64编码

    def __init__(self, key='emv6YtaYyw6CMx5NesZHn-PTx499p25TPNE2wTSJSak='):
        """
        初始化加密工具类。
        :param key: 密钥，如果未提供则自动生成一个密钥。
        """
        if key is None:
            self.key = Fernet.generate_key()
        else:
            self.key = key
        self.cipher_suite = Fernet(self.key)

    def encrypt(self, data):
        """
        加密数据。

        :param data: 要加密的数据（字符串）
        :return: 加密后的数据（字节串）
        """
        return self.cipher_suite.encrypt(data.encode())

    def decrypt(self, encrypted_data):
        """
        解密数据。

        :param encrypted_data: 要解密的数据（字节串）
        :return: 解密后的数据（字符串）
        """
        return self.cipher_suite.decrypt(encrypted_data).decode()

# 使用示例
if __name__ == "__main__":
    #     # 创建加密工具类实例
    tool = EncryptionUtil()
    #
    #     # 要加密的数据
    original_data = "123456"
    #
    #加密数据
    encrypted_data = tool.encrypt(original_data)
    print(f"加密后的数据: {encrypted_data}")

    # 解密数据
    decrypted_data = tool.decrypt(encrypted_data)
    print(f"解密后的数据: {decrypted_data}")